// Problem 028: Number spiral diagonals
// Starting with the number 1 and moving to the right in a clockwise direction a 5 by 5 spiral is formed as follows:

// 21 22 23 24 25
// 20  7  8  9 10
// 19  6  1  2 11
// 18  5  4  3 12
// 17 16 15 14 13

// It can be verified that the sum of the numbers on the diagonals is 101.
// What is the sum of the numbers on the diagonals in a 1001 by 1001 spiral formed in the same way?

package main

import (
	"fmt"
)

func p028() {
	s0, step, sn, sum := 1, 2, 1001*1001, 1
	for s0 < sn {
		s0 += 4 * step
		sum += 4*s0 - 6*step
		step += 2
	}
	fmt.Println("Problem 028:", sum)
}
